控制依赖:在程序分析/编译原理中,指某条语句(或基本块)的执行是否发生,取决于某个条件分支(如 if、while)的结果。它描述的是由控制流带来的依赖关系(区别于数据依赖)。
/kənˈtroʊl dɪˈpɛndənsi/
Control dependency affects which statements run after an if-condition.
控制依赖会影响在 if 条件之后哪些语句会被执行。
In a program dependence graph, control dependency edges connect predicates to the blocks whose execution they govern, enabling optimizations and slicing.
在程序依赖图中,控制依赖边把条件判断节点连接到其所支配执行的基本块,从而支持优化与程序切片等分析。
该术语由 control(控制/控制流) 与 dependency(依赖关系) 组合而来,常见于编译器与静态分析领域;其核心思想是:不是“值”决定后续计算(数据依赖),而是“分支条件的真假”决定某段代码是否会执行(控制依赖)。